package cn.com.w.bootdemo.config;


import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;

/**
 * @Value
 * 通过 @Value("${配置文件的key}") 方式读取配置文件的值
 * 如果配置文件中没有这个key，通过@Value("${给定的key:默认值}")可以给定默认值，如果不加“:默认值”会报错。
 * 如果配置文件有key，但是value为空，给定默认值这种方式，不会得到默认值的结果，会输出空值
 *
 * 不使用@PropertySource注解，则默认读取的是classpath下的application.properties
 */
@Component
@PropertySource(value = {"classpath:config/config.properties"}, ignoreResourceNotFound=false,
        encoding="UTF-8",
        name="config.properties")
public class ApplicationPropertiesConfig {

    @Value(value = "${system.name:lisi}")
    private String name;

    @Value(value = "${system.cretadate:0000-00-00}")
    private String date;


    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getDate() {
        return date;
    }

    public void setDate(String date) {
        this.date = date;
    }
}
